$import("ui.frame");
$import("ui.md.WinBase");
var states = [
        ['AL', 'Alabama', 'The Heart of Dixie'],
        ['AK', 'Alaska', 'The Land of the Midnight Sun'],
        ['AZ', 'Arizona', 'The Grand Canyon State']
];
/**
 * 进货商品窗口
 */
ui.frame.PurchaseWin  = function(cfg){
	if (! cfg) cfg = {};
	if (! cfg.width) cfg.width = 750;
	if (! cfg.height) cfg.height = 500;
	cfg.title = '新的进货单';
	// 顶部工具条
	cfg.tbar  = [{
		xtype : 'tbbutton',
		iconCls: 'top_menu_1',
		text : '新建商品'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_2',
		text : '清空列表'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_3',
		text : '选择商品'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_4',
		text : '删除所选'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_5',
		text : '打　　印'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_6',
		text : '预　　览'
	},{
		xtype : 'tbbutton',
		iconCls: 'top_menu_7',
		text : '导　　出'
	},{
		xtype : 'tbseparator'
	},{
		xtype : 'tbspacer',
		width : 20
	},{
		xtype : 'tbtext',
		text : '打印格式：'
	},{
		xtype : 'combo'
		
	}];
	// 列模型
	var fm = Ext.form;
	var cm = new Ext.grid.ColumnModel({
		defaults: {
		    sortable: true,
		    width: 70
		},
		columns: [{
	        header: '商品编号',
	        dataIndex: 'id',
	        width : 100,
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    },{
	        header: '品 名',
	        dataIndex: 'name',
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    },{
	        header: '规 格',
	        dataIndex : 'spec'
	    },{
	        header: '单 位',
	        dataIndex: 'unit',
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    },{
	        header: '上次进价',
	        dataIndex: 'prevPrice',		        
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    },{
	        header: '进货实价',
	        dataIndex: 'realPrice',		        
	        editor: new fm.TextField({
	            allowBlank: true
	        })
	    },{
	        header: '数 量',
	        dataIndex: 'amount',		        
	        editor: new fm.NumberField({
	            allowBlank: true,
	            allowDecimals : false
	        })
	    },{
	        header: '零售价',
	        dataIndex: 'retailPrice',		        
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    },{
	        header: '备 注',
	        id : 'memo',
	        dataIndex: 'memo',
	        editor: new fm.TextField({
	            allowBlank: false
	        })
	    }]
	});
	
	 // 创建表格
	this.grid = new Ext.grid.EditorGridPanel({
        cm: cm,
        store : new Ext.data.ArrayStore({
        	autoDestroy: true,
            storeId: 'myStore',
            idIndex: 0,
        	fields : ["id", "name", "spec", "unit", "prevPrice", "amount", "retailPrice", "memo"],
        	data : [
	             ['fdsaf', 'fdasfd', 'fdsafdsa', 'fdfdaf', 10.2, 10.2, 20, 10, 'Image one']	            
        	]
        	
        }),
        clicksToEdit: 1,
        anchor :'0 -180',
        frame : true
    });
    var self = this;
    
    // 进度条
    var progressBar = new Ext.ProgressBar({
	     hidden : true,
	     style : 'margin-top:15px'
    });

	/**
	 * 主体内容
	 */
	cfg.items = [{
		xtype : 'form',
		id : 'myform',
		labelWidth  : 70,
		width : '100%',
		labelSeparator : '：',
		border: false,
		defaults : {border:false},
		bodyStyle : 'padding:10px;background-color: transparent;',
		items : [{
			/**
			 * 供货商信息表单
			 */
			layout : 'column',
			bodyStyle : 'background-color: transparent;',
			defaults : {border:false, bodyStyle : 'background-color: transparent;'},
			items : [{
				columnWidth : 0.34,
				layout : 'form',
				defaults : {allowBlank: false, blankText: '不能为空'
						, msgTarget: 'side', bodyStyle : 'background-color: transparent;', anchor : '90%'},
				defaultType : 'combo',
				items : [{
					xtype : 'label',
					style : 'font-size:18px;font-weight:bold;',
					text : '新的进货单'
				},{
					xtype : 'combo',
					fieldLabel : '供应商名',
				    displayField : 'state',
				    mode: 'local',
				    emptyText:'选择供应商',
					store : new Ext.data.ArrayStore({
				        fields: ['abbr', 'state', 'nick'],
				        data : states
				    })
				},{
					fieldLabel : '付款账户',
					data : ['现金', '转账']
				}]
			},{
				columnWidth : 0.33,
				layout : 'form',
				defaults : {allowBlank: false, blankText : '不能为空', msgTarget: 'side', bodyStyle : 'background-color: transparent;', anchor : '90%'},
				defaultType : 'textfield',
				items : [{
					xtype : 'datefield',
					value : '2009-10-20',
					fieldLabel : '下单日期'
				},{				
					fieldLabel : '供应商号'
				},{
					fieldLabel : '已付金额',
					value : 0
				}]
			},{
				columnWidth : 0.33,
				layout : 'form',
				defaults : {allowBlank: false, blankText : '不能为空', msgTarget: 'side', bodyStyle : 'background-color: transparent;', anchor : '90%'},
				defaultType : 'textfield',
				items : [{
					fieldLabel : '单　　号',
						blankText : '不能为空'
				},{
					xtype : 'combo',
					fieldLabel : '收货仓库',
					displayField : 'state',
				    mode: 'local',
				    emptyText:'选择供应商',
					store: new Ext.data.ArrayStore({
				        fields: ['abbr', 'state', 'nick'],
				        data : states
				    })
				},{
					fieldLabel : '本次总额'
				}]
			}]
		},
		self.grid,
		// 下方联系资料
		{
			layout : 'column',
			bodyStyle : 'background-color: transparent;padding-top:10px',
			defaults : {border : false, layout : 'form',  bodyStyle : 'background-color: transparent;'},
			items : [{
				columnWidth : 0.5,
				defaults : {bodyStyle : 'background-color: transparent;', anchor : '98%'},
				items : [{
					xtype : 'combo',
					fieldLabel : '快速录入'
				}]
			},{
				columnWidth : 0.25,
				defaults : {bodyStyle : 'background-color: transparent;', anchor : '98%'},
				items : [{
					xtype : 'textfield',
					fieldLabel : '运输费用'
				}]
			},{
				columnWidth : 0.25,
				defaults : {bodyStyle : 'background-color: transparent;', anchor : '98%'},
				items : [{
					xtype : 'combo',
					fieldLabel : '采 购 员'
				}]
			}]
		}, {
			layout : 'column',
			bodyStyle : 'background-color: transparent;',
			defaults : {border : false, layout : 'form', bodyStyle : 'background-color: transparent;'},
			items : [{
				columnWidth : 0.5,
				defaults : {bodyStyle : 'background-color: transparent;', anchor : '98%'},
				items : [{
					xtype : 'combo',
					fieldLabel : '附加说明'
				}]
			},{
				columnWidth : 0.5,
				defaults : {bodyStyle : 'background-color: transparent;', anchor : '98%'},
				items : [{
					xtype : 'combo',
					fieldLabel : '摘　　要'
				}]
			}]
		},
		// 操作按钮
		{
			 layout : 'column',
			 bodyStyle : 'background-color: transparent;',
			 border : false,
			 items : [{
				 xtype : 'container',
				 layout : 'anchor',
				 items : [progressBar],
				 height : 50,
				 columnWidth : 1
			 }, {
				 	layout : 'hbox',
					bodyStyle : 'background-color: transparent;',
					border : false,
					width : 300,
					layoutConfig : {
						defaultMargins : {top:10, right:10, bottom:10, left:10},
						pack: "center"
					},
					items : [{
						xtype : 'button',
						scale: 'medium',
						width : 80,
						text : '保　存',
						handler: function(){
							var fp = Ext.getCmp('myform');
							progressBar.show();
		                    progressBar.wait({
		                        interval:100,
		                        duration:5000,
		                        increment:10,
		                        fn:function(){
		                    		progressBar.hide();
		                        }
		                    });
			                if(fp.getForm().isValid()){
			                    var sb = Ext.getCmp('form-statusbar');
			                    sb.showBusy('Saving form...');
			                    fp.getEl().mask();
			                    
			                   /* fp.getForm().submit({
			                        url: 'fake.php',
			                        success: function(){
			                            sb.setStatus({
			                                text:'Form saved!',
			                                iconCls:'',
			                                clear: true
			                            });
			                            fp.getEl().unmask();
			                        }
			                    });*/
			                }
			            }
					}, {
						xtype : 'button',
						scale: 'medium',
						width : 80,
						text : '取　消'
					}]
			 }]
		}]
	}, new Ext.ux.StatusBar({
        id: 'form-statusbar',
        defaultText: 'Ready',
        plugins: new Ext.ux.ValidationStatus({form:'myform'})
    })];
	
	ui.frame.PurchaseWin.superclass.constructor.call(this, cfg);
};
Ext.extend(ui.frame.PurchaseWin, ui.md.WinBase, {
});